This document lists/expolains the JSON configuration metadata for Altermatic. Please refer to the most recently included templates for how JSON files should be structured, refer to this document if you need explainations on different entries.

[> How it works <]

Altermatic is a run-time replacer framework. The general idea is that instead of replacing files at compile/load (as in, replacing default assets so that Palworld loads them by default), Altermatic instead watches for objects to spawn through various systems, then dynamically swaps/adjusts assets based on the provided JSON config files.

When making config files all entries are assumed valid. Since validation is very heavy, Altermatic has to skip most validation methods for the sake of performance and reliability in execution. As such, it's important to test replacer packs before release to ensure they work as expected! If you are distributing/sharing JSON configs that include meshes from external packs, ensure users know of those packs and their requirements before hand to prevent any confusion and game issues.

[> Parameters <]

"PackName"
    Optional but recommended parameter for easier recognition, can be pulled to display in UI implementations

"SkelMeshSwap"
    This defines an array of Skeletal Mesh Swaps you want Altermatic to perform with each entry having all the parameters you wish to be met. Used to swap the Pal/NPC models (doesn't work on player for technical reasons). The CharacterID, SkelMeshPath, and a Gender should all be set.

    "CharacterID"
        CharacterID is the UniqueID of the character you wish to change (the internal name of the character, in technical terms, the CharacterID, UnqiueNPCID, and BP Name are all checked).
    
    "SkelMeshPath"
        SkelMeshPath defines the internal file path to the model you want to swap to.

    "Gender"
        None/Female/Male (With SCake : Futa/FullFuta/Neutered/FullNeutered) (exclude=none)
        Gender defines what gender the Pal/NPC must be for the mesh swap in. By default only None/Male/Female are supported, however with SCake installed additional genders are supported.
    
    "IsRarePal"
        Determines if this swap should only apply to 'Rare' pals as defined by the game.
    
    "SkinName"
        SkinName refers to the internal name for Palworld's skins system. You can choose to replace a specific skin by defining this parameter